home *** CD-ROM | disk | FTP | other *** search
/ Whiteline: delta / whiteline CD Series - delta.iso / systems / emulate / speccy / speccy.txt < prev    next >
Text File  |  1995-11-25  |  9KB  |  230 lines

  1.  
  2.  
  3.  
  4.                            SPECCY
  5.  
  6.  
  7.  
  8.          Der ZX-Spectrum-Emulator fuer den Atari ST
  9.  
  10.  
  11.  
  12.            Copyright (c) 1990 Hansjoerg Oppermann
  13.  
  14.  
  15.                  Autor:  Hansjoerg Oppermann
  16.                          Rennelbergstr. 15
  17.                          3300 Braunschweig
  18.  
  19.  
  20.  
  21. ZX Spectrum ist ein eingetragenes Warenzeichen der
  22. Firma Sinclair Research Ltd.
  23.  
  24. ---
  25.  
  26. Unter der Voraussetzung, dass die Dateien
  27.  
  28.      SPECCY.PRG, SPECCY.RSC,
  29.      SPECTRAN.PRG, SPECTRAN.RSC, SPECTRAN.XXX
  30.      READ_ROM.TOS, SAVE_ROM.XXX, SENDPROG.TTP
  31.      und SPECCY.TXT
  32.  
  33. zusammen und unveraendert kopiert werden, darf SPECCY fuer 
  34. private Anwender frei kopiert und benutzt werden. 
  35. Kommerzielle Nutzung in jeder Form (dies schliesst auch
  36. den Vertrieb ueber Public-Domain-Sammeldisketten oder
  37. aehnliches ein) ist NICHT gestattet.
  38.  
  39. ---
  40.  
  41. Nun doch! Diese Projekt laeuft schon seit ueber drei Jahren. 
  42. Ich konnte  mich lange nicht entschliessen den Emulator in 
  43. irgend einer Weise zu beenden. Er war eher eine Studie als 
  44. ein richtiges Produkt. Ich hatte viele Versionen angefangen 
  45. und doch nicht beendet; es gab ihn als GEM-Programm, als 
  46. Entwicklungumgebung mit Monitor und Disassembler und wie 
  47. nun, als Standalone ohne ROM und ohne viel Schnickschnack.
  48.  
  49. Als grosse Hilfe erwies sich der CPM80-Emulator von 
  50. SoftDesign Muenchen. Dort habe ich viele Anregungen 
  51. gefunden. Als ein Problem erwies sich das Behandeln der 
  52. Interrupts und die Darstellung des Bildschirms, konnte aber 
  53. (auf Kosten der Geschwindigkeit) geloest werden.
  54.  
  55. Nun, was kann der Emulator? Er verhaelt sich wie ein 
  56. normaler Sinclair ZX-Spectum mit 48 KB RAM, einem Kemston 
  57. Joystick-Interface und ohne Drucker. Die Tastatur ist zu 
  58. einer Rubbel-Gummi-Tastatur zurueck entwickelt worden. Die 
  59. linke Shift-Taste ist CAPS-Shift, die rechte SYMBOL-Shift 
  60. und die grosse Space-Taste nun BREAK-SPACE. Wer damals 
  61. keinen Spectum besessen hat, wird mit diesen Hinweisen nicht 
  62. viel anfangen koenne. Er sollte sich an einen alten 
  63. Spectrum-User wenden und dort die noetigen Hilfen holen.
  64.  
  65. SPECCY laeuft nur in High- und Low-Resolution. Weiter 
  66. Aufloesungen oder Bildschirmformate werden nicht 
  67. unterstuetzt. Im Monochrombetrieb wird die Farbe in 
  68. Graustufen dargestellt.
  69.  
  70. Die Geschindigkeit ist nicht berauschend. Leider!
  71.  
  72. Noch eins, da das Spectum-ROM dem Copyright unterliegt, ist 
  73. es NICHT im Emulator enthalten. Wenn ihr den Emulator also 
  74. benutzen wollt, muesst ihr euch erst einmal ein Spectrum-ROM 
  75. besorgen. Es liegt ein Programm bei, welches dieses Problem 
  76. einfach loest. Ihr braucht einen Spectrum mit Interface I, 
  77. ein Null-Modem-Kabel zwischen Spectum und Atari ST und los 
  78. gehts. Das wie wird weiter unten beschrieben.
  79.  
  80. Um Programme des Spectums zu nutzen, liegt ein 
  81. Transferprogramm fuer den Atari ST und dem Spectrum bei. Die 
  82. Benutzung der beiden sollte keine Probleme aufwerfen. 
  83. Selbst Baudraten bis 19 KiloBaud sind moeglich.
  84.  
  85. Beim Starten des Emulators erscheint eine Dialog-Box. Hier 
  86. koennen einige Parameter veraendert werden:
  87.  
  88. 1.   Anzahl der Interrupts pro Sekunde. Wie oft ein Z80-
  89.      Interrupt erzeugt wird. Hiervon ist die 
  90.      Tastaturroutine des Spectrum abhaengig. Durch 
  91.      Verringern der Interrupts kann die Geschwindigkeit 
  92.      gesteigert werden.
  93.  
  94. 2.   Anzahl der Bildschirm-Refreshs pro Sekunde. Die 
  95.      Darstellung des Bildschirm wird periodisch erneuert. 
  96.      Es werden aber nur die Stellen bearbeitet, die sie 
  97.      geaendert haben. Durch Heruntersetzen der Anzahl kann 
  98.      wiederum die Geschwindigkeit gesteigert werden.
  99.  
  100. 3.   Flash. Die Blinkgeschwindigkeit, z.B. des Cursor steht 
  101.      in Abhaengigkeit zur Bildschirm-Refresh-Frequenz.
  102.  
  103. 4.   Beeper. Schaltet die Tonausgabe ein und aus. Es 
  104.      existiert einmal ein Emulation fuer die im Rom 
  105.      eingebaute Ton-Routine und auch die von den meisten 
  106.      Programmen genutzte Moeglichkeit direkt ueber OUT-
  107.      Befehle. Da die Geschwindigkeit des Emulators nicht 
  108.      die seines Orginals (jedenfalls auf einem normalen ST) 
  109.      erreicht, sind die Toene oder Geraeusche ueber den OUT-
  110.      Befehl ein wenig zu tief. Um einen davon zu befreien, 
  111.      gibt es diesen Schalter.
  112.  
  113. 5.   Speecy. Mit diesem Button wird der Emulator gestartet. 
  114.      Es wird kein Reset ausgefuert. Das heisst, dass man an 
  115.      der Stelle, wo man den Emulator ueber UNDO verlassen 
  116.      hat, weiter das Programm fortsetzt.
  117.  
  118. 6.   Reset. Zuruecksetzen und Starten des Emulators. Die 
  119.      Register des Z80 werden geloescht und ein RST 0 
  120.      ausgefuehrt (Kaltstart).
  121.  
  122. 7.   Exit. Verlassen des SPECCY. Tschuess.
  123.  
  124. Der Emulator kann jederzeit durch die Taste UNDO verlassen 
  125. werden, man kehrt wieder zu Start-Dialog-Box zurueck. Weiter 
  126. sind einige Tasten der Atari-Tastatur mit Funktionen 
  127. belegt, die das Arbeiten mit dem Spectrum erleichtern 
  128. sollen. Die Cursor-Tasten funktionieren ohne das man zwei 
  129. Finger quaelen muss, Insert wie EDIT und das DELETE des 
  130. Spectrums liegt auf Backspace (wo es auch hingehoert).
  131.  
  132. Beim Laden ohne Dateinamenangabe erscheint ein 
  133. Fileselectorbox, wo beliebige Spectrum-Dateien angewaehlt 
  134. werden koennen.
  135.  
  136. Fuer Schwerenoeter: ein Spectrum-Datei hat folgendes Format:
  137.      17 Bytes Spectrum-Tape-Header
  138.           1 Byte         Dateitype
  139.           2 - 11 Byte    Dateiname (10 Zeichen)
  140.           12 - 17 Byte   Laengen- und Addressangaben
  141.      anschliessent den Inhalt der Datei
  142.  
  143. Da ein Dateiname des Spectrums 10 Zeichen lang seinen und 
  144. auch Zeichen enthalten kann, die beim Atari nicht in 
  145. Dateinamen erscheinen duerfen, musste hier ein Einschnitt 
  146. geschehen. Der Name im Spectrum-Tape-Header wird ohne 
  147. Sonderzeichen, bis max. 8 Zeichen als Name fuer die 
  148. Spectrum-Datei verwendet. (Punktum!)
  149.  
  150. Nun. Übertragung des Spectrum-ROMs und der Spectrum-
  151. Programme. Der erste Schritt ist ein geeignetes Null-Modem-
  152. Kabel zu bekommen. Wer hat der hat und wer nicht muss noch.
  153.  
  154. Der zweite Schritt ist das Übertragen der Programme zum 
  155. Übertragen von Daten auf der Spectrum-Seite zur Atari-Seite 
  156. (Puh).
  157. Dazu stellt man auf dem Atari die RS-232-Schnittstelle auf 
  158. 9600 Baud, 8 Daten-Bit, 1 Stop-Bit ein und schaltet XON-
  159. XOFF aus und RTS-CTS ein. Dann tippt man auf dem Spectrum 
  160. folgende Zeilen ein:
  161.  
  162.      10 FORMAT "b";9600
  163.      20 LOAD *"b"
  164.  
  165. (Diese Zeilen stellen einen binaren Stream mit 9600 Baud 
  166. zur Verfuegung und versucht ein Programm (BASIC-HIC) ueber 
  167. diese Stream zu laden)
  168.  
  169. Mit RUN dieses Programm starten. Nun auf dem Atari das 
  170. Program SENDPROG.TTP mit dem Parameter SAVE_ROM.XXX 
  171. starten. Wenn alles gut gegangen ist, wird auf dem Spectrum 
  172. nun ein kleines BASIC-Programm liegen. Diese kopiert das 
  173. Spectrum-ROM in einen hoeheren Bereich im Spectrum und 
  174. schickt es dann auf die Reise zum Atari. 
  175. Hier noch ein wichtiger Satz zum Spectrum-ROM:
  176.      Das Spectrum-ROM muss ein Orginal Sinclair ZX-Spectrum 
  177.      ROM sein, also kein in irgendeinerweise geaendertes.
  178. Erklaerung:
  179.      Da das ROM im Speccy noch gepatch werden muss und ich 
  180.      nur das Orginal beruecksichtige, werden alle 
  181.      Zuwiderhandlungen leider zum Misserfolg dieser Mission 
  182.      fuehren.
  183.  
  184. Nun weiter. Also startet das Programm (SAVE_ROM) auf dem 
  185. Spectrum und wartet ein Weilchen, denn BASIC ist kein 
  186. Rennpferdchen. Die Zeit laesst sich nutzen und auf dem Atari 
  187. das Programm READ_ROM.PRG starten. Zu Ende ist diese 
  188. Prozedur, wenn beide Programme sich beendet haben und auf 
  189. dem Atari eine Datei namens SPECCY.ROM vorliegt.
  190.  
  191. Um das erste Mal den Emulator zu Starten, kopieren sie die 
  192. Dateien SPECCY.PRG, SPECCY.RSC und SPECCY.ROM in einem Pfad 
  193. und starten das Programm SPECCY.PRG.
  194.  
  195. ---
  196.  
  197. Na, alles klar? (Wenn nicht, weiss ich's auch nicht. Bei mir 
  198. funktionierts)
  199.  
  200. Nun fehlt noch die Übertragung von Daten. Dazu gibt es das 
  201. Programm SPECTRAN(S). Nochmals den BASIC-Zwei-Zeiler von 
  202. oben auf dem Spectrum eingetippt, Starten (RUN) des 
  203. Spectrums und starten des Programms SENDPROG.TTP mit 
  204. SPECTRAN.XXX. Das Programm, welches nun im Spectrum liegen 
  205. sollte, solltet Ihr am Besten nun sichern.
  206.  
  207. Mit dem Programm SPECTRAN auf dem Atari und auf dem 
  208. Spectrum koennen nun Daten vom Spectrum zum Atari gesendet 
  209. werden. Beide muessen auf die gleiche Baudrate eingestellt 
  210. werden, an sonsten gibt es wohl keine Probleme.
  211.  
  212. Bisher werden nur Daten, die auf Kassetten vorliegen und 
  213. nicht groesser als ca. 36 KByte sind, uebertragen. Auch nur
  214. in einer Richtung! Dies ist eine Grenze, die noch zu 
  215. Beseitigen ist. Wer sich daran versuchen will, kann von mir 
  216. die noetigen Daten und Sourcen (C) der Atari-Seite bekommen.
  217.  
  218.  
  219.  
  220. Puh! Nun ist alles gesagt, was zu sagen ich in der Lage 
  221. bin. Wahrscheinlich wimmelt dieser Text vor 
  222. Rechtschreibfehlern, die unterliegen aber meinem Copyright 
  223. (Ich habe auch immer viel Spass beim Lesen meiner 
  224. schriftlichen Erguesse).
  225.  
  226.  
  227. 3.7.90    Viel Spass!
  228.  
  229.  
  230.